import java.sql.*;
import java.util.ResourceBundle;
public class Main {
    public static void main(String[] args) {

        // 这里getboundle 的方法的参数就是配置文件的文件名,不需要后缀名
        ResourceBundle bundle = ResourceBundle.getBundle("jdbc");
        String driver = bundle.getString("driver");
        String user = bundle.getString("user");
        String url = bundle.getString("url");
        String password = bundle.getString("password");



        Connection connection = null;
        // statement 对象的getexecuteUpdate 方法中只能执行delete update insert
        Statement statement = null;
        ResultSet resultSet = null;



        try {
            Class.forName(driver);

            //1.获取链接

            connection = DriverManager.getConnection(url,user,password);
            //2.创建链接对象
            statement = connection.createStatement();
            // 3.执行mysql语句
            String sql = "select ename as name ,sal as s from emp";

            // executeUpdate 返回值是int类型,(update,insert,delete)
            // executeQuery 方法专门执行select语句的方法.返回值是一个ResultSet集合
            resultSet = statement.executeQuery(sql);
            System.out.println(connection);

            // resultSet有一个next() 是一个指向一行的指针,一开始不指向任何数据,假如指定的行没有数据就会返回false
            // 否则返回true,知道next()的返回值是false就停止遍历结果集.
//            boolean flag = resultSet.next();
            // true 说明该光标指向的那一行有数据 System.out.println(flag);
            // getString 方法可用于获取当前行的数据,都以String的形式返回,返回值类型是String
            // getString 方法的参数是当前那行的列数,


            // 注意:在jdbc中,所有的下标都是从1开始的!!!
            while(resultSet.next()){
                // 取出第一列的数据
//                String name = resultSet.getString(1);
//                // 取出第二列的数据
//                String sal = resultSet.getString(2);

                // 可以通过列名获取数据,更健壮.
                // 注意!!! 这里的名字经过as重命名之后的列名,必须要写重命名之后的名字
//                String name = resultSet.getString("name");
//                String sal = resultSet.getString("s");



                // 注意: 这里除了以String取出之外,还可以getInt()类型取出,可以特定类型取出.
                String name = resultSet.getString("name");
                int sal = resultSet.getInt("s");
                System.out.println(name+"  "+sal);
            }




            //4.对查询结果级操作

        }
        catch (Exception e){
            e.printStackTrace();
        }
        finally {

            // 5. 释放资源

        }


    }
}